论文推荐|刘冰, 左溪冰, 谭熊, 等:高光谱影像分类的深度少样例学习方法
《测绘学报》
复制链接,关注《测绘学报》抖音!
【测绘学报的个人主页】长按复制此条消息,长按复制打开抖音查看TA的更多作品##7NsBSynuc88##[抖音口令]
本文内容来源于《测绘学报》2020年第10期,审图号GS(2020)5551号。
刘冰
信息工程大学, 河南 郑州 450001
基金项目:国家自然科学基金(41801388)
摘要:针对高光谱影像分类面临的小样本问题,提出了一种深度少样例学习算法,该算法在训练过程中通过模拟小样本分类的情况来训练深度三维卷积神经网络提取特征,其提取得到的特征具有较小类内间距和较大的类间间距,更适合小样本分类问题,且能用于不同的高光谱数据,具有更好的泛化能力。利用训练好的模型提取目标数据集的特征,然后结合最近邻分类器和支持向量机分类器进行监督分类。利用Pavia大学、Indian Pines和Salinas 3组高光谱影像数据进行分类试验,试验结果表明,该算法能够在训练样本较少的情况下(每类地物仅选取5个标记样本作为训练样本)取得优于传统半监督分类方法的分类精度。
关键词:高光谱影像分类 深度少样例学习 深度三维卷积网络 最近邻分类
高光谱影像能同时提供地物丰富的光谱和空间信息,被广泛应用于环境监测、精细农业等领域。高光谱影像地物分类是高光谱影像处理中极具挑战性的环节,其主要任务是为图像中每一个像元赋予类别标记。根据分类过程中是否利用标记样本,高光谱影像分类方法可分为无监督分类、监督分类和半监督分类。文献[1]对常用的监督分类器进行了详尽的介绍,包括最近邻(k-nearest neighbor,KNN)、支持向量机(support vector machine,SVM)、决策树等。
为有效应对维数灾难问题,科研人员通过特征提取方法降低特征维度,使用主成分分析[2]、独立成分分析[3]等方法实现数据降维。后续研究表明,综合利用高光谱影像的空谱信息能有效提高分类精度,因此空间信息被引入到高光谱影像特征提取过程中,常见算法有拓展形态学剖面[4](EMAP)、马尔科夫随机场[5](MRF)、局部二值模式[6](LBP)、Gabor滤波器[7]等。此外,波段选择[8]也被应用于影像降维处理。尽管特征提取和波段选择可以缓解标记样本不足的问题,但在有限的标记样本条件下,监督分类仍然很难获得满意的分类结果。由于半监督学习能同时利用标记样本和未标记样本改进学习性能,故成为近年来的研究热点。常见的半监督学习算法有半监督支持向量机[9]、协同训练[10]、主动学习[11]等。
近年来,深度学习在高光谱影像处理中取得了广泛的应用,堆栈式自编码器[12]被率先应用于高光谱影像分类。随后,深度置信网络[13]、一维卷积神经网络[14](1D-CNN)、循环神经网络[15](RCNN)、二维卷积神经网络[16](2D-CNN)、三维卷积神经网络[17](3D-CNN)也相继应用于高光谱影像分类,并取得了较好的分类效果。但是标记样本通常数量有限且较难获取,成为制约高光谱影像分类技术发展的关键因素之一。为解决小样本问题,文献[18]构建了像素对,显著增加了训练样本的数量。文献[19]设计了一种半监督CNN,进一步提高了有限标记样本情况下的分类精度。文献[20]构造了一种适用于特征学习的5层卷积神经网络(C-CNN),相比传统的卷积神经网络,该网络取得了更高的分类精度。尽管上述方法取得了一定进展,但模型泛化能力较弱,而且无法有效应对小样本问题。
针对高光谱影像分类中面临的小样本问题和模型泛化能力较弱的问题,本文提出了一种深度少样例学习算法,该算法的核心思想是通过预先搜集的标记数据训练深度三维卷积神经网络[21](Res-3D-CNN),使其学习到一个能适应不同数据的度量空间。在该度量空间内,同类样本特征相互聚合,不同类样本特征彼此远离。进一步结合最近邻分类器和SVM分类器进行监督分类。最后在Pavia大学、Indiana Pines和Salinas 3组高光谱影像数据集上验证了本文算法的有效性。
本文提出了一种深度少样例学习算法,该算法主要由3部分组成。首先利用预先收集的高光谱影像训练数据集通过模拟小样本分类的情形训练Res-3D-CNN,然后将训练好的模型作为特征提取器,提取测试数据集上所有样本的特征,注意这里的测试数据集与训练数据集是不同源的,最后在提取的样本特征中,选取少量样本作为监督样本,进而利用最近邻分类器完成监督分类。
1.1 深度少样例学习及其训练策略
少样例学习是指通过少量的标记样本训练模型学习识别物体[22]。受文献[23—24]少样例学习成功的启发,本文提出深度少样例学习算法,即利用一些预先收集的高光谱影像训练Res-3D-CNN来学习一个度量空间。随后,将学习得到的度量空间拓展到新的高光谱测试数据,并提高少样例(小样本)条件下的分类精度。其关键是利用预先收集的标记样本训练Res-3D-CNN学习度量空间。为使Res-3D-CNN学习到适应少样例分类的度量空间,首先从训练数据中随机挑选一批样本来模拟少样例分类,则要学习的度量空间就可以用Res-3D-CNN进行参数化表示,进一步Res-3D-CNN可被视为一个非线性变换函数fϕ:
图 1 深度少样例学习的训练过程Fig. 1 The training process of deep learning with few examples |
图选项 |
首先,假设训练数据集中共有类地物,则从训练数据集中随机抽取C(C < K)类地物的样本作为一批训练样本,为便于编程实现,每类地物抽取的样本数量均相同。进一步将训练样本随机分为支撑样本集(support set)和查询样本集(query set)。为更加有效地模拟测试数据中的少样例分类问题,在这批训练样本中,每类地物随机选取1个样本作为支撑样本集,剩余样本作为查询样本集。随后将支撑样本集和查询样本集均通过Res-3D-CNN进行前向传播,并输出每个样本对应的特征向量。进而计算出查询样本特征向量相对于支撑样本特征向量的欧氏距离。为使Res-3D-CNN输出特征具有良好的紧致性,进一步按照式(1)计算不同地物间的特征分布
式中,ck为支撑样本集中第k类地物对应的特征向量;x表示查询样本集中样本对应的特征向量;y为x对应的真实标记;d(·)为欧氏距离函数。最后定义Res-3D-CNN的损失函数为
最小化式(2)所示的损失函数不是训练网络学习如何预测样本标记,而是使得查询样本集中的样本经网络输出的特征空间与同类的支撑样本彼此靠近,而与不同类的支撑样本相互远离。深度少样例学习算法的具体训练步骤如算法1所示。
算法 1:深度少样例学习算法。N和K分别为训练数据集中的样本数量和样本类别数量。Nc < K为每批训练样本的类别数量,NQ为查询样本集中每类样本的数量,支撑样本集中每类样本的数量为1。RandomSample(S, M)指从样本集合S中随机抽取M个样本。算法流程如下。
输入:训练数据集D={(x1, y1), …, (x1N, y1N)}, yi∈{1, …, K},Dk为包含第k类所有样本的子样本集D, (xi, yi=k)。
输出:每批训练样本的负对数损失函数值。
V←RandomSample({1, …, K}, NC) ▷随机选取Nc类样本
for k in {1, …, NC} do
Sk←RandomSample (DV1k, 1) ▷选取支撑样本
Qk←RandomSample (DV1k\Sk, NQ) ▷选取查询样本
ck←fϕ(xi) ▷计算支撑样本的特征向量
end for
J(ϕ)←0 ▷初始化损失函数为0
for k in {1, …, NC} do
for (x, y) in Qk do
end for
end for
1.2 深度三维卷积网络
考虑到空间信息能有效改善高光谱影像分类精度,且三维卷积网络能较好地利用高光谱影像提供的空谱信息,采用文献[21]中提出的深度三维卷积神经网络(Res-3D-CNN)作为特征提取的网络。具体网络结构如图 2所示。与文献[21]设计的Res-3D-CNN不同,本文网络输出的是特征向量而不是类别标记,因此去除了最后的全连接层,且没有应用Dropout。
图 2 深度三维卷积网络结构Fig. 2 Architecture of deep 3D convolution network |
图选项 |
图 2中,Conv表示卷积核大小为3×3×3的三维卷积层,虚线框内为一个残差学习模块,每个残差学习模块后连接一个步长为2×2×4的池化层,以减少计算量,并对特征进行聚合。ReLU(rectified linear units)激活函数相比于传统的Sigmoid和tanh激活函数具有更快的收敛速度。因此,所有三维卷积层均采用ReLU激活函数进行非线性映射。ReLU激活函数形式如式(3)所示
试验的硬件环境为16 GB内存,i7-9750H处理器,RTX2070显卡。试验所有程序均基于Python语言和深度学习库tensorflow开发实现。
2.1 试验数据
2.1.1 训练数据
笔者搜集了Houston、Botswana、KSC和Chikusei[25] 4组高光谱数据集用作训练Res-3D-CNN的训练数据。表 1中给出了4组高光谱训练数据集的详细信息,其中波段数指可用于训练的波段数。
表 1 Houston、Botswana、KSC和Chikusei高光谱数据集Tab. 1 Houston, Botswana, KSC and Chikusei hyperspectral datasets
数据 | Houston | Botswana | KSC | Chikusei |
影像大小/像素 | 349×1905 | 1476×256 | 512×614 | 2517×2335 |
光谱范围/nm | 380—1050 | 400—2500 | 400—2500 | 363—1018 |
波段数 | 144 | 145 | 176 | 128 |
空间分辨率/m | 2.5 | 30 | 18 | 2.5 |
传感器 | ITRES- CASI1500 | EO-1 | AVIRIS | Hyperspec- VNIR-C |
区域 | Houston | Botswana | Florida | Chikusei |
地物类别数量 | 31 | 14 | 13 | 19 |
表选项
4组高光谱数据集中共有77类标记地物,这些地物类别来自不同的地区,同时涵盖了不同的空间分辨率,从而保障了训练样本的多样性。考虑到计算资源较为有限,且为了便于编程实现,每类地物随机选取200个标记样本用于训练,并舍弃掉样本数量不足200个的地物类别。因此,最后用于训练Res-3D-CNN的训练数据共包含44类地物,每类地物包含200个标记样本。与此同时本文还测试了75类地物(每类地物100个标记样本)和35类地物(每类地物400个样本),在Pavia大学数据上的分类精度,相比于44类地物的分类精度有所下降。这说明地物类别的多样性和每类地物的样本数量均能够影响最终分类结果。根据试验结果,最终采用较为折中的方案,即44类地物,每类地物随机选取200个标记样本作为训练数据。用于训练的4组高光谱数据的波段数分别为144、145、176、128,为保证输入样本特征的维度相同,最终只选择前100个波段用于训练Res-3D-CNN。参考文献[21],每个训练样本输入Res-3D-CNN网络中的特征为数据立方体。
2.1.2 测试数据
为验证所提方法的有效性,采用Pavia大学、Indiana Pines和Salinas 3组高光谱数据集作为测试数据集。表 2给出了这3组高光谱数据集的详细信息。为简化测试数据的分类过程,将输入样本的光谱维度限定在100,这3组测试数据的波段数分别为103、200、204,为充分利用波段信息以提高分类精度,Pavia大学数据只取前100个波段用于分类,而Indiana Pines和Salinas取前200个波段用于分类,最终将前100个波段输出的特征和后100个波段输出的特征连接起来用作最终的分类特征。与此同时,本文还在Indiana Pines和Salinas数据上分别测试了只取前100个波段和只取后100个波段的情况,相比于连接两者输出特征的情况有所下降,证明了所提方法的合理性。
表 2 Pavia大学、Indian Pines和Salinas高光谱数据集Tab. 2 Pavia university, Indian Pines and Salinas hyperspectral data sets
数据 | Pavia大学 | Indiana Pines | Salinas |
影像大小/像素 | 610×340 | 145×145 | 512×217 |
光谱范围/nm | 430—860 | 400—2500 | 400—2500 |
波段数 | 103 | 200 | 204 |
空间分辨率/m | 1.3 | 20 | 3.7 |
传感器 | ROSIS | AVIRIS | AVIRIS |
区域 | Pavia | Indiana | California |
地物类别数量 | 9 | 16 | 16 |
表选项
2.2 试验参数设置
在Res-3D-CNN的网络结构中,卷积层使用卷积核的数量能极大地影响分类结果。为分析卷积核数量对最终分类结果的影响,本文分别设置第1个残差模块中的卷积核数量为2、4、8、16和32,第2个残差模块中卷积核数量设置为第1个残差模块卷积核数量的2倍,最后一个卷积层中设置卷积核数量为第2个残差模块卷积核数量的2倍。不同卷积核数量在3组高光谱影像测试数据集上的总体分类精度(10次试验结果的均值和标准差)如表 3所示。由表 3可知,使用过少的卷积核(例如2或4)会极大地降低分类精度,设置卷积核数量为8或16或32较为合理,但是随着卷积核数量的增加,训练时间也会相应增加,因此最终设置3个残差模块中使用的卷积核数量依次为8、16、32。
表 3 不同卷积核数量对应的总体分类精度Tab. 3 Overall classification accuracy corresponding to different number of convolution kernels (%)
数据集 | 2 | 4 | 8 | 16 | 32 |
Pavia大学 | 61.27±12.47 | 72.61±5.48 | 80.81±3.12 | 81.08±2.20 | 80.55±2.56 |
Indiana Pines | 49.74±13.41 | 63.50±1.63 | 67.84±1.29 | 68.14±0.91 | 67.53±1.56 |
Salinas | 81.32±5.22 | 84.68±2.27 | 88.40±1.54 | 88.41±1.28 | 85.99±1.14 |
表选项
Res-3D-CNN的网络结构确定后,深度少样例学习算法涉及的参数还有训练次数、学习率大小、每批训练样本的类别数NC以及每类地物查询样本的数量NQ。由于每批训练样本是从训练数据集中随机采样得到的,无法判断是否遍历所有的训练数据。因此设置每次迭代随机抽取10 000批训练样本,共迭代200次,这样能保证Res-3D-CNN得到充分的训练。为分析学习率大小对最终分类结果的影响,试验中分别设置学习率为0.01和0.001,图 3所示为不同学习率对应的损失函数曲线,横坐标为迭代次数,纵坐标为损失函数值。观察图 3可知使用较大的学习率训练Res-3D-CNN不能充分训练网络,而较小的学习率则能使损失函数值降低到更小,且上下波动范围较小,因此最终设置学习率为0.001。
图 3 不同学习率对应的损失函数值曲线Fig. 3 The loss function curve corresponding to different learning rates |
图选项 |
NC设置过小会极大地降低分类精度,3组测试数据集中地物类别分别为9、16和16,为更好地模拟测试数据中的少样例学习问题,每批训练样本包含的地物类别数NC应该大于16。而考虑到用于训练的样本类别共44类,最终设置NC=20。此外,理论上NQ值设置得越大,训练过程越能模拟少样例学习,但计算机计算能力有限,且用于训练的标记样本也较为有限。以Pavia大学数据集为例,NQ被分别设置为4、9、14、19、24和29,图 4给出了训练过程中每类地物选取不同数量查询样本对应的总体分类精度(10次试验结果的均值)和训练时间(10次试验结果的均值)。观察图 4可知,Pavia大学的总体分类精度随NQ的增加而增加,且很快趋于稳定,但训练时间却随着NQ的增加而不断增加。综合考虑分类精度和训练时间,最终设置NQ=19。
图 4 Pavia大学数据集上每类地物选取不同数量的查询样本对应的总体分类精度和训练时间Fig. 4 The overall classification accuracy and training time corresponding to different number of query samples selected for each type of feature in the Pavia university data set |
图选项 |
2.3 可视化分析
为了更加直观地理解Res-3D-CNN所提取特征的有效性,利用预训练好的Res-3D-CNN提取Salinas数据集的特征,从提取出的特征数据中每类地物随机选取200个样本,并利用t-SNE方法进行降维可视化,如图 5所示。观察图 5(a)可知,原始光谱特征经过t-SNE降维后,不同类别的可分性较差,如Follow_smooth和Follow混合在一起无法区分;而图 5(b)中,经过预训练好的Res-3D-CNN提取后的特征经t-SNE降维后,具有较好的可分性,如Follow_smooth和Follow能够被较好地区分开。说明预训练好的Res-3D-CNN提取得到的特征同类样本相互聚集,不同样本彼此分离,因而能有效提高影像分类精度。
图 5 Salinas数据集t-SNE特征可视化结果Fig. 5 Salinas dataset t-SNE feature visualization results |
图选项 |
2.4 与半监督分类算法对比
半监督学习算法能有效利用未标记样本来提高小样本情况下的高光谱影像分类精度。为证明所提出的深度少样例学习(deep few-shot learning,DFSL)方法能有效应对高光谱影像分类中面临的小样本问题,每类地物分别随机选取5、10、15、20、25个标记样本作为监督样本进行分类,并与SVM和半监督算法进行对比分析。用作对比的半监督算法包括laplacian support vector machine (LapSVM)[26]、transductive support vector machine (TSVM))[26]、spatial-contextual semi-supervised support vector machine (SCS3VM))[26]、spatial-spectral label propagation based on the support vector machine (SSLPSVM))[26]、KNN+SNI[27]、MLR+RS[28]和SVM+S-CNN[29]。
表 4至表 6分别给出了DFSL结合最近邻分类器(DFSL+NN)和对比算法在3组用于测试的高光谱影像数据集上的总体分类精度(10次试验结果的均值和标准差)。为说明DFSL+NN的有效性,还同时给出了DFSL+SVM的分类结果。DFSL+SVM需要利用4折交叉验证来确定SVM的核函数参数和惩罚系数。而DFSL+NN不需要确定额外的参数。
表 4 不同算法在Pavia大学数据集上的分类结果Tab. 4 Classification results of different algorithms on Pavia university data set (%)
方法 | L=5 | L=10 | L=15 | L=20 | L=25 |
SVM | 53.73±1.30 | 61.53±1.14 | 60.43±0.94 | 64.89±1.14 | 68.01±2.62 |
LapSVM | 65.72±0.34 | 68.26±2.20 | 68.34±0.29 | 65.91±0.45 | 68.88±1.34 |
TSVM | 63.43±1.22 | 63.73±0.45 | 68.45±1.07 | 73.72±0.27 | 69.96±1.39 |
SCS3VM | 56.76±2.28 | 64.25±0.40 | 66.87±0.37 | 68.24±1.18 | 69.45±2.19 |
SS-LPSVM | 69.60±2.30 | 75.88±0.22 | 80.67±1.21 | 78.41±0.26 | 85.56±0.09 |
KNN+SNI | 70.21±1.29 | 78.97±2.33 | 82.56±0.51 | 85.18±0.65 | 86.26±0.37 |
MLR+RS | 69.73±3.15 | 80.30±2.54 | 84.10±1.94 | 83.52±2.13 | 87.97±1.69 |
SVM+S-CNN | 23.68±6.34 | 66.64±2.37 | 68.35±4.70 | 78.43±1.93 | 72.87±7.36 |
DFSL+NN | 80.81±3.12 | 84.79±2.27 | 86.68±2.61 | 89.59±1.05 | 91.11±0.83 |
DFSL+SVM | 72.57±3.93 | 84.56±1.83 | 87.23±1.38 | 90.69±1.29 | 93.08±0.92 |
表选项
表 5 不同算法在Indiana Pines数据集上的分类结果Tab. 5 Classification results of different algorithms on Indiana Pines data set (%)
方法 | L=5 | L=10 | L=15 | L=20 | L=25 |
SVM | 50.23±1.74 | 55.56±2.04 | 58.58±0.80 | 62.93±0.64 | 65.12±0.63 |
LapSVM | 52.31±0.67 | 56.36±0.71 | 59.99±0.65 | 64.13±1.19 | 65.36±0.62 |
TSVM | 62.57±0.23 | 63.45±0.17 | 65.42±0.02 | 64.43±0.20 | 67.68±1.67 |
SCS3VM | 55.42±0.35 | 60.86±5.08 | 67.24±0.47 | 68.34±1.57 | 72.42±1.21 |
SS-LPSVM | 56.95±0.95 | 64.74±0.39 | 78.76±0.04 | 80.29±0.80 | 84.11±0.08 |
KNN+SNI | 56.39±1.03 | 74.88±0.54 | 78.92±0.61 | 80.08±0.59 | 82.60±0.73 |
MLR+RS | 55.38±3.98 | 69.28±2.63 | 75.15±1.43 | 77.68±1.57 | 79.32±0.88 |
SVM+S-CNN | 10.02±1.48 | 17.71±4.90 | 44.00±5.73 | 45.08±10.90 | 51.30±10.41 |
DFSL+NN | 67.84±1.29 | 76.49±1.44 | 78.62±1.59 | 81.74±0.95 | 84.74±1.44 |
DFSL+SVM | 64.58±2.78 | 75.53±1.89 | 79.98±2.23 | 83.01±1.67 | 85.47±1.21 |
表选项
表 6 不同算法在Salinas数据集上的分类结果Tab. 6 Classification results of different algorithms on Salinas data set (%)
方法 | L=5 | L=10 | L=15 | L=20 | L=25 |
SVM | 73.90±1.91 | 75.62±1.73 | 79.08±1.45 | 77.89±1.20 | 78.05±1.49 |
LapSVM | 75.31±2.31 | 76.34±1.77 | 77.93±2.42 | 79.40±0.73 | 80.56±1.33 |
TSVM | 60.43±1.40 | 67.47±1.05 | 69.12±1.32 | 71.03±1.78 | 71.83±1.16 |
SCS3VM | 74.12±2.44 | 78.49±2.02 | 81.83±0.93 | 81.22±1.27 | 77.08±0.80 |
SS-LPSVM | 86.79±1.75 | 90.36±1.35 | 90.86±1.36 | 91.77±0.96 | 92.11±1.07 |
KNN+SNI | 80.39±1.58 | 84.64±1.54 | 86.94±1.52 | 88.28±1.49 | 87.64±1.72 |
MLR+RS | 78.92±2.16 | 85.03±1.43 | 87.20±1.74 | 88.76±1.87 | 89.42±0.85 |
SVM+S-CNN | 12.66±2.75 | 50.04±14.34 | 60.72±4.85 | 70.30±2.61 | 71.62±12.05 |
DFSL+NN | 88.40±1.54 | 89.86±1.69 | 92.15±1.24 | 92.69±0.98 | 93.61±0.83 |
DFSL+SVM | 85.58±1.87 | 89.73±1.24 | 91.21±1.64 | 93.42±1.25 | 94.28±0.80 |
表选项
观察表 4—表 6中的试验结果可知:①所有算法的分类精度大体上随着监督样本数量L的增加而提高;②半监督算法的分类精度整体上优于SVM的分类精度;③SVM+S-CNN在监督样本较少的情况下分类精度极差;④DFSL+NN和DFSL+SVM均取得了较为理想的分类精度,尤其是DFSL+NN在每类地物仅选取5个标记样本的情况下,均取得了最高的分类精度。
前两个现象比较容易理解,因为过去大量的研究和实践已经证明增加监督样本数量和引入未标记样本都可以提高影像分类精度。SVM+S-CNN和DFSL+NN的基本思想是相似的,即通过训练使CNN学习得到一个度量空间,在该度量空间中的特征具有同类样本相互靠近,而不同类样本彼此远离的特点,因此即使使用简单的最近邻分类器或线性SVM也能够取得较好的分类结果。不同的是SVM+S-CNN只针对一组数据进行学习,因此需要一定数量的标记样本来保证其泛化能力,且每一组测试数据均需要训练一个CNN来提取相应的特征。而当标记样本极少的情况下,如每类地物随机选取5个标记样本,SVM+S-CNN会产生严重的过拟合现象,因此在测试样本上的分类精度较低。与之对应的DFSL+NN利用一个预先搜集好的高光谱数据集来训练Res-3D-CNN,训练数据中来自不同影像的44类地物能够保证DFSL+NN的泛化能力,且DFSL只需要训练一次便可应用于所有测试数据。与此同时,DFSL的训练过程还模拟了影像的少样例学习问题,因此DFSL+NN取得了优于SVM、LapSVM、SCS3VM、SSLPSVM、KNN+SNI、MLR+RS、SVM+S-CNN的分类精度。
当训练样本数量极少时(L=5),SVM需要利用交叉验证的方法确定最优参数,极易产生过拟合现象,而最近邻分类器(NN)则不需要确定额外参数,因此DFSL+NN的分类精度均优于DFSL+SVM。随着训练样本数量的增加,DFSL+SVM和DFSL+NN的分类精度均逐渐增加,且DFSL+SVM的分类精度逐渐接近甚至优于DFSL+NN的分类精度。例如当L=25时,DFSL+SVM的分类精度均优于DFSL+NN的分类精度。为此,当可用的训练样本极少时,如每类地物仅有5或10个标记样本,DFSL应结合NN分类器进行分类;而当训练样本数量的较为合理时,如每类地物超过25个标记样本时,DFSL应结合SVM分类器进行分类。
为更加直观地观察DFSL+NN的分类结果,图 6—图 8分别给出了选取不同数量的监督样本DFSL+NN获得的分类结果图。由图 6—图 8可知,随着标记样本数量L的增加,分类噪声逐渐减少,这也直观地说明了DFSL+NN在小样本情况下的有效性。
图 6 Pavia大学数据集上选取不同数量的监督样本获得的分类结果Fig. 6 Classification results obtained by selecting different Numbers of supervised samples from the Pavia university dataset |
图选项 |
图 7 Indiana Pines数据集上选取不同数量的监督样本获得的分类结果Fig. 7 Classification results obtained by selecting different Numbers of supervised samples from the Indiana Pines dataset |
图选项 |
图 8 Salinas数据集上选取不同数量的监督样本获得的分类结果Fig. 8 Classification results obtained by selecting different numbers of supervised samples from the Salinas dataset |
图选项 |
考虑到高光谱数据中的类别不平衡情形,进一步每类地物分别随机选取1%、2%、3%、4%、5%的标记样本作为监督样本进行分类。图 9给出了3个测试数据集上的分类结果,其中横坐标代表每类地物选取的样本比例,纵坐标表示测试数据的总体分类精度。分析图 9可知,在每类地物选取相同比例标记样本的情况下,DFSL+NN仍能取得较高的分类精度,进一步说明了DFSL+NN在小样本情况下的有效性。
图 9 不同测试数据集上选取不同样本比例的监督样本对应的分类精度Fig. 9 The classification accuracy of the supervised samples with different sample proportions was selected from different test data sets |
图选项 |
2.5 与基于CNN的分类算法对比
为进一步说明DFSL的有效性,将DFSL+NN和DFSL+SVM与目前最先进的基于CNN的高光谱影像分类算法进行对比。对比算法包括1D-CNN[14]、R-PCA-CNN[30]、CNN-PPF[18]和C-CNN[20]。由于对比算法均是在每类地物随机选取200个标记样本的情况下取得的最优分类结果,因此,本小节试验中每类地物随机选取200个标记样本作为监督样本,且Indiana Pines只选取了数量较多的前9类地物进行分类。
表 7—表 9给出了不同算法在3组用于测试的高光谱数据集上的分类结果。由试验结果可知,DFSL+SVM和DFSL+NN在训练样本数量进一步增加的情况下,能够取得比目前最先进的CNN分类算法更高的分类精度。这也说明了所提出的DFSL方法具有较强的适应性。
表 7 不同算法在Pavia大学数据集上的分类结果Tab. 7 Classification results of different algorithms on Pavia university data set (%)
Class No. | Training | Testing | CNN | R-PCA-CNN | CNN-PPF | C-CNN | DFSL+NN | DFSL+SVM |
1 | 200 | 6431 | 85.62 | 92.43 | 97.42 | 97.40 | 95.49 | 97.18 |
2 | 200 | 18 449 | 88.95 | 94.84 | 95.76 | 99.40 | 98.92 | 99.40 |
3 | 200 | 1899 | 80.15 | 90.89 | 94.05 | 94.84 | 97.47 | 97.90 |
4 | 200 | 2864 | 96.93 | 93.99 | 97.52 | 99.16 | 98.30 | 98.40 |
5 | 200 | 1145 | 99.30 | 100.0 | 100.0 | 100.0 | 100.0 | 100.0 |
6 | 200 | 4829 | 84.30 | 92.86 | 99.13 | 98.70 | 99.42 | 99.56 |
7 | 200 | 1130 | 92.39 | 93.89 | 96.19 | 100.0 | 99.40 | 99.25 |
8 | 200 | 3482 | 80.73 | 91.18 | 93.62 | 94.57 | 92.53 | 95.52 |
9 | 200 | 747 | 99.20 | 99.33 | 99.60 | 99.87 | 99.68 | 99.68 |
OA | 87.90 | 94.38 | 96.48 | 98.41 | 97.85 | 98.62 | ||
AA | 89.73 | 93.87 | 97.03 | 98.22 | 97.91 | 98.54 | ||
Kappa系数 | 83.81 | 92.32 | 95.09 | 97.89 | 97.15 | 98.17 |
表选项
表 8 不同算法在Indiana Pines数据集上的分类结果Tab. 8 Classification results of different algorithms on Indiana Pines data set (%)
Class No. | Training | Testing | CNN | R-PCA-CNN | CNN-PPF | C-CNN | DFSL+NN | DFSL+SVM |
1 | 200 | 1288 | 79.63 | 82.39 | 92.99 | 96.28 | 95.59 | 98.32 |
2 | 200 | 630 | 69.48 | 85.41 | 96.66 | 92.26 | 99.16 | 99.76 |
3 | 200 | 283 | 85.80 | 95.24 | 98.58 | 99.30 | 100.0 | 100.0 |
4 | 200 | 530 | 94.95 | 99.25 | 100.0 | 99.25 | 99.86 | 100.0 |
5 | 200 | 278 | 98.57 | 100.0 | 100.0 | 100.0 | 100.0 | 100.0 |
6 | 200 | 772 | 71.41 | 82.76 | 96.24 | 92.84 | 95.88 | 97.84 |
7 | 200 | 2255 | 90.44 | 96.20 | 87.80 | 98.21 | 94.91 | 95.93 |
8 | 200 | 393 | 70.26 | 82.14 | 98.98 | 92.45 | 99.16 | 99.66 |
9 | 200 | 1065 | 99.90 | 99.81 | 99.81 | 98.98 | 99.92 | 99.76 |
OA | 84.44 | 91.09 | 94.34 | 96.76 | 97.38 | 98.35 | ||
AA | 84.50 | 91.47 | 96.78 | 96.62 | 98.28 | 99.03 | ||
Kappa系数 | 82.51 | 89.13 | 94.73 | 95.94 | 96.93 | 98.07 |
表选项
表 9 不同算法在Salinas数据集上的分类结果Tab. 9 Classification results of different algorithms on Salinas data set (%)
Class No. | Training | Testing | CNN | R-PCA-CNN | CNN-PPF | C-CNN | DFSL+NN | DFSL+SVM |
1 | 200 | 1809 | 98.73 | 98.84 | 100.0 | 100.0 | 100.0 | 100.0 |
2 | 200 | 3526 | 99.12 | 99.61 | 99.88 | 99.89 | 100.0 | 99.97 |
3 | 200 | 1776 | 96.08 | 99.75 | 99.60 | 99.89 | 100.0 | 100.0 |
4 | 200 | 1194 | 99.71 | 98.79 | 99.49 | 99.25 | 100.0 | 99.86 |
5 | 200 | 2478 | 97.04 | 99.84 | 98.34 | 99.39 | 99.89 | 100.0 |
6 | 200 | 3759 | 99.59 | 99.70 | 99.97 | 100.0 | 100.0 | 100.0 |
7 | 200 | 3379 | 99.33 | 79.05 | 100.0 | 99.82 | 99.97 | 100.0 |
8 | 200 | 11 071 | 78.64 | 99.17 | 88.68 | 91.45 | 91.70 | 91.67 |
9 | 200 | 6003 | 98.04 | 96.88 | 98.33 | 99.95 | 99.98 | 99.69 |
10 | 200 | 3078 | 92.38 | 99.31 | 98.60 | 98.51 | 99.21 | 99.79 |
11 | 200 | 868 | 99.14 | 100.0 | 99.54 | 99.31 | 100.0 | 100.0 |
12 | 200 | 1727 | 99.88 | 100.0 | 100.0 | 100.0 | 100.0 | 100.0 |
13 | 200 | 716 | 97.84 | 98.97 | 99.44 | 99.72 | 100.0 | 100.0 |
14 | 200 | 870 | 96.17 | 82.24 | 98.96 | 100.0 | 100.0 | 100.0 |
15 | 200 | 7068 | 72.69 | 97.57 | 83.53 | 96.24 | 96.81 | 97.01 |
16 | 200 | 1607 | 98.59 | 99.61 | 99.31 | 99.63 | 99.83 | 99.94 |
OA | 90.25 | 92.39 | 94.80 | 97.42 | 97.78 | 97.81 | ||
AA | 95.19 | 96.83 | 97.73 | 98.94 | 99.21 | 99.25 | ||
Kappa系数 | 89.51 | 91.84 | 93.97 | 97.11 | 97.53 | 97.56 |
表选项
2.6 效率对比分析
本文提出的方法实际上由训练Res-3D-CNN、提取测试样本的特征和利用NN或SVM进行监督分类3部分组成。众所周知训练深度学习模型费时费力[31-32],但是本文所提方法不需要重复训练Res-3D-CNN,其优势是只需要训练一次,便可将训练好的Res-3D-CNN模型应用于不同的高光谱测试数据集。训练Res-3D-CNN一次大约需要耗时106 min。一旦Res-3D-CNN训练完成,分类过程实际上只包含特征提取和监督分类。
为分析计算效率,将所提出的方法与分类精度较为接近的SS-LPSVM和C-CNN进行对比。表 10给出了SS-LPSVM、C-CNN、DFSL+NN和DFSL+SVM在Indiana Pines数据集上的训练和测试时间。SS-LPSVM主要由5部分组成,表中给出的是总的计算时间。表 10中C-CNN的计算时间包含训练时间和测试时间。DFSL+NN和DFSL+SVM的特征提取过程是相同的,且与选取的训练样本数量无关,因此表 10中DFSL+NN和DFSL+SVM特征提取所耗费的时间均为11.14 s。但由于SVM需要采用交叉验证的方法确定最优参数,因此分类过程所需时间较长。观察表 10可知,当每类地物标记样本L=5时,与SS-LPSVM相比,DFSL+NN和DFSL+SVM特征提取和分类所需时间更少;当每类地物标记样本L=200时,与C-CNN相比,DFSL+NN和DFSL+SVM也具有更快的执行速度。
表 10 Indiana Pines数据集不同算法的训练和测试时间Tab. 10 Different algorithm training and testing time in Indiana Pines data set
样本数 | 不同算法 | ||
L=5 | SS-LPSVM | DFSL+NN | DFSL+SVM |
193.80 s | 11.14 s+0.36 s | 11.14 s+2.21 s | |
L=200 | C-CNN | DFSL+NN | DFSL+SVM |
27 min+0.74 s | 11.14 s+2.00 s | 11.14 s+168.13 s |
表选项
本文提出了一种深度少样例学习算法,用于解决高光谱影像分类中面临的小样本问题,采用Pavia大学、IndianPines和Salinas 3组高光谱影像数据进行分类试验,试验结果表明,一旦Res-3D-CNN训练完成,本文所提的分类方法具有分类精度高、执行过程简单和执行速度快的优点。本文所提出方法的分类精度在小样本情况下优于传统半监督学习算法,在样本充足的情况下也能取得与当前最先进的基于CNN的方法相当的分类精度。
虽然深度少样例学习算法取得了较为理想的分类结果,但在试验中搜集的可用于训练的标记样本数量仍较为有限,因此需要搜集更多的训练样本,以进一步提高深度少样例学习算法的分类性能。此外,深度少样例学习算法具有良好的可拓展性,其提取得到的特征可以结合任意分类器进行监督分类,后续工作中将测试更多的分类器,以进一步验证其有效性。
第一作者简介:刘冰(1991-), 男, 博士, 讲师, 研究方向为机器学习与高光谱影像分类。E-mail:liubing220524@126.com
通信作者:左溪冰, E-mail:zuoxibing1015@sina.com
论文推荐|韩杰, 陶醉, 谢勇, 等:顾及多积分时间特性的GF-4卫星PMS传感器交叉辐射定标
论文推荐 | 解清华, 朱建军, 汪长城, 等:基于S-RVoG模型的PolInSAR森林高度非线性复数最小二乘反演算法
李建章 闫浩文 |《测绘学报(英文版)》(JGGS)精选论文
论文推荐|韩杰, 陶醉, 谢勇, 等:顾及多积分时间特性的GF-4卫星PMS传感器交叉辐射定标
论文推荐 | 解清华, 朱建军, 汪长城, 等:基于S-RVoG模型的PolInSAR森林高度非线性复数最小二乘反演算法
李建章 闫浩文 |《测绘学报(英文版)》(JGGS)精选论文
权威 | 专业 | 学术 | 前沿
微信、抖音小视频投稿邮箱 | song_qi_fan@163.com
微信公众号中搜索「测绘学报」,关注我们,长按上图二维码,关注学术前沿动态。
欢迎加入《测绘学报》作者QQ群: 751717395
进群请备注:姓名+单位+稿件编号
权威 | 专业 | 学术 | 前沿
微信、抖音小视频投稿邮箱 | song_qi_fan@163.com
微信公众号中搜索「测绘学报」,关注我们,长按上图二维码,关注学术前沿动态。
欢迎加入《测绘学报》作者QQ群: 751717395
进群请备注:姓名+单位+稿件编号